Array
char c[];//引用一个任意长度的字符数组
c=new char[4];
c[0]='b';
c[1]='l';
c[2]='u';
c[3]='e';
c[4]='s';//runtime error 编译时没有问题运行时出现问题
int l= c.length//获得数组的长度,这里.length是一个域,如果为string.length 则一个为方法。filed和method的区别,method为一段代码函数,filed为存储在某一位置的一个变量。
Primes Revisited 素数遍历
程序分三步,主要算法为古老的sieve of eratosthenes(埃拉托斯特尼筛法),第一步假设所有的数都为素数,第二部,用2~根号n的除子去除这个数。第三步打印.
//Part1
public static void printPrimes[int n]{
boolean[] prome = new boolean[n+1]; //Number 0~n 为何不用n-1为了是下标对应数值
int i ;
for (i=2;i<=n ;i ++)
prime[i]= true;
//Part2
for(int divisor =2 ;divisor *divisor <=n; divisor++)//divisor从0~根号N递增
if prime(divisor){ //省去前面除子已经遍历出的非素数除子
for (i=2*divisor;i<=n;i=i+divisor) //从两倍非素数除子开始,没遍历一次除子加一倍,并判断是否已超出范围
prime[i]=false;
}
//Part3
for(i=2;i<=n;i++){
if(prime[i]){
System.out.print(“”+i);
}
}
}
Pascal Triangle
/*返回一个三角
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
*/
12345678910111213141516171819public static int [][] pascalTriangle(int n){ int [][] pt = new int [n][]; for(int i= 0;i<n;i++){ pt[i]= new int [i+1]; pt[i][0]=1; for(int j = 1;j<i;j++){ pt[i][j]=pt[i-1][j-1]+pt[i-1][j]; } pt[i][i]=1; } return pt; } } }}